1. Field of the Invention
The present invention relates to a system in which storage virtualization is implemented in a storage network, and particularly to a management method or the like of automatically conducting distribution and addition of capacity to respective information processing resources.
2. Description of the Related Art
In recent years, networking and intelligentization have proceeded in a technical field of storage based on a technique of storage networking. The storage unit, has become independent of a server platform, and is now evolving into an independent computing platform.
As such techniques for the storage network, SAN (Storage Area Network), NAS (Network Attached Storage) and the like are conventionally known, for example. The SAN constructs a dedicated network in which servers and storage are connected mainly by using a Fibre Channel technique. The SAN employs a configuration in which servers and storage are connected as the SAN separately from LAN which connects clients and the servers, and a plurality of storage devices are unitarily managed based on a concept that the plurality of the storage devices work as a single system. By causing the storage to be independent of the servers, it is possible to innovate solutions which are independently implemented in the storage such as data preservation by disk mirror, LAN free/serverless backup and disaster recovery. A network which is flexible and highly extendable similarly to a LAN can be constructed by using hubs and switches of the Fibre channel, and the capacity, the management and the like of the storage can be enhanced.
The NAS (Network Attached Storage) is a network storage that connects to an IP network in a manner similar to that of a file server connected to the IP network. In the NAS, not only servers but also clients can directly access storage, while in the SAN, the clients can access the storage only via the servers.
Further, in recent years, a technique of storage virtualization in the storage network has been developed. In the conventional SAN (Storage Area Network) and NAS (Network Attached Storage), the storage is physically integrated. To the contrary, in the storage virtualization, the storage is logically integrated.
In the above SAN, the storage is separated from and made independent of servers, and all the files are physically aggregated. However, stored data constituting the SAN is still closely associated with the OS and applications of the servers logically. The stored data of various servers exists at one location physically, however, the data is not integrated as one unit of management logically at all. To enhance the function of the SAN, the storage network requires a configuration where the stored data is also independent of servers logically, and the data can be unitarily controlled and managed on the side of the storage device physically and logically. The technique to meet the above requirement is the storage virtualization technique.
In the storage virtualization, a logical view viewed from the OS or an application in a server is separated from physical implementation in the storage. In other words, a manner in which the storage appears when it is viewed from outside is separated from physical existence of the storage. Disks themselves have been subjected to virtualization for a long time. The realization of virtualization at an individual disk device level such as block distribution of cylinders, tracks or disks based on RAID techniques has lead to a realization of mirroring and striping at a hardware level. In the storage virtualization technique, similar processes are realized in the entirety of the storage network.
Regarding the virtualization, virtual memory (a paging process and a swapping process) is very well known, however, as described above, the storage virtualization is completely different from the technique of virtual memory. Therefore, the inventions related to virtual memory (the paging process and/or the swapping process) disclosed, for example, in Patent Document 1, Patent Document 2, Patent Document 3 and the like are made in the technical field having no relationship to that of the present invention.
In the above storage virtualization technique, functions explained in FIG. 13 to FIG. 18 have already been able to be utilized. Specifically, the function of “virtualization of volume” explained in FIG. 13 and FIG. 14, the function of “switching between virtualization and non-virtualization of volume” explained in FIG. 15, the function of “dynamic capacity addition of volume” explained in FIG. 16, the function of “mirroring of user data” explained in FIG. 17, and the function of “dynamic redistribution of real volume” explained in FIG. 18. Also, a technique of SCSI access via an IP (iSCSI) has been known in recent years. These conventional techniques are disclosed in Non-Patent Document 1, Non-Patent Document 2, Non-Patent Document 3, Non-Patent Document 4 and Non-Patent Document 5 and the like. Further, products provided with these functions have already been sold (IPStor and the like for example). Additionally, the details of the IPStor are introduced in a website of Non-Patent Document 6 for example.
The function of “virtualization of volume” shown in FIG. 13 is very well known in the technique of the storage virtualization, however it will be explained for a confirmation. In the function of “virtualization of volume”, volume which is visible from a host 200 is abstracted as a virtual volume, and a location at which data corresponding to this virtual volume actually exists and the data's configuration are invisible from the host 200. Accordingly, one virtual volume V1 that is visible from the host 200 (2 GB for example) may actually consist of two real volumes R1 and R2 (each 1 GB for example) as shown in FIG. 13. Naturally, the inverse case is possible. Also, the correspondence or the like between the virtual volume and the real volume is unitarily managed by a virtualization server (not shown) based on management information stored therein, and the host 200 acquires arbitrary data or and the like via the virtualization server when the data is necessary. Additionally, the configuration of the virtualization server is not limited to one independent server, and for example, the host 200 itself can include a function of the virtualization server for accessing the storage via the virtualization server function by means of an application or the like.
Additionally, the management information specifying the correspondence between the virtual volume and the real volume can be held in the real volumes R1, R2 and R3 which store user data as shown in FIG. 14A for example, or can be unitarily held in a volume 220 which is different from any one of the real volumes R1, R2 and R3 storing the user data as shown in FIG. 14B.
Next, the above function of “switching between virtualization and non-virtualization of volume” will be explained. According to this function, as shown in FIG. 15, the user data on the real volume R1 can be located, as it is, under the virtualization control and be used without being transferred to another volume (without being copied) (upon this, the correspondence between the virtual volume V1 and the real volume R1 is registered in the management information 220), and in an inverse manner, the user data can be returned to be in the state of non-virtualization from the state of the virtualization.
Next, the above function of “dynamic capacity addition of volume” will be explained.
When capacity of a real volume is to be added while the real volume is being directly used by a host, the host has to stop its operation and wait for a restart of the operation until a real volume having necessary capacity is prepared and user data is copied onto this prepared volume. However, when the virtual volume is used, the capacity can be added without stopping the operation of the host. An image of the above is shown in FIG. 16. In FIG. 16, an image is shown in which first, the capacity of the virtual volume V1 was only the capacity of volume V1-1 corresponding to the real volume R1, and later, the capacity of volumes V1-2, V1-3 and V1-4 respectively corresponding to the real volumes R2, R3 and R4 is dynamically and sequentially added for example. In FIG. 16, for example, a virtualization server 230 holds management data 231 specifying the correspondence between the virtual volume and the real volume for controlling the virtualization, and upon the above addition of the capacity, the correspondence between the real volumes R2, R3 and R4 and the virtual volume V1 (V1-2, V1-3 and V1-4) is newly registered in the management data 231.
Next, the above function of “mirroring of user data” will be explained.
As is well known, in the storage virtualization, mirroring can be configured. Specifically, a real volume which is in a state of storage virtualization as shown in FIG. 17A is duplicated into two real volumes R1 and R5 which correspond to one virtual volume V1 which is visible from the host 200 and the exact same data 1 is stored in the two real volumes R1 and R5 as shown in FIG. 17B, thereby, even when one real volume has a fault, the operation of the host does not have to stop by depending on the other real volume.
Next, the above function of “dynamic redistribution of real volume” will be explained.
In this function, one existent real volume as shown in FIG. 18A is once duplicated by adding a new real volume R5 besides one real volume R1 corresponding to one virtual volume V1 based on the above mirroring function, and the data 1 existing in the real volume R1 is copied onto the added real volume R5 as shown in FIG. 18B. Then, as shown in FIG. 18C, the existent real volume R1 is separated, and only the added real volume R5 is made to correspond to the virtual volume V1. Naturally, this change of the location at which the user data 1 is actually stored is invisible from the host 200. According to the above configuration, the actual location at which the user data 1 actually exists (the real volume) can be changed without stopping the operation of the host 200.
Next, the technique of SCSI access via an IP (iSCSI) will be explained.
The above described SAN has a lot of merits, however, the SAN has a problem of high cost because the SAN is based on Fibre Channel which is a relatively new technology. Also, there is a maximum connection distance limit of 10 kilometers. The technique which is developed taking these demerits into consideration is IP-SAN (Internet Protocol-SAN) whose representative example is the iSCSI.
The iSCSI (Internet Small Computer Systems Interface) generally means a protocol standard for conducting data communications between computers and storage on the IP network by using the SCSI command encapsulated in an IP packet, about which draft of standard is currently released by IETF (Internet Engineering Task Force) and the standardization thereof is in progress.
The iSCSI is characteristic in that it can deal with the network storage while maintaining a compatibility with the existing applications by employing SCSI command which is commonly used in storage devices.
In the conventional SCSI, a physical transmission channel is defined together with commands for various controls and data transference, however, in the iSCSI, command portions in the SCSI are extracted and the IP network is employed for transmission channel so that the versatility is enhanced. By employing the iSCSI, servers and storage can be connected by using switching hubs, routers and the like for Ethernet which are inexpensive instead of the Fibre channel which is commonly used as a transmission channel for the SAN. Further, because the IP network is employed for the transmission channel, the iSCSI can be applied to an application in which the data is backed up in a remote storage by using the Internet.
As above, in the iSCSI, the standardization is in progress in which the merits of the existing SCSI technique and the IP/Ethernet techniques are utilized, and the server/storage industries hold expectations for the iSCSI as a new standard of storage protocol.
The configuration example where the iSCSI is employed is shown in FIG. 19. In FIG. 19, an arbitrary transaction server 250 in a local site 240 comprises a SCSI driver 252, a NIC (LAN) driver 253, and when an arbitrary transaction program 251 issues SCSI data including commands such as connection, disconnection, information acquisition, reading, writing or the like, the SCSI data is encapsulated in an IP packet, and is transmitted to a remote site 260. As shown, the packet based on the iSCSI protocol consists of an IP header portion and a data portion similarly to the packet configuration based on the conventional IP communications protocol, and the SCSI data issued by the above transaction program 251 is integrated in this data portion.
On a side of the remote site 260, a virtualization server 270 or the like comprising a NIC (LAN) driver 271, a SCSI driver 272 converts the received iSCSI data into the SCSI data, executes a process on the real volume 280 in accordance with the requesting command, and returns to the local site 240 (for example, when the command requests data reading, the requested data is read and the read data is returned to the local site 240).
Incidentally, in recent years, due to a rapid spread of the Internet and a rapid increase in the number of cases where a large amount of data such as still images, video images and the like is transmitted, the data amount required to be transmitted has rapidly increased in the computer network market, and occasions for additionally installing data storage devices for storing the large amount of data as above occur much more often. It is possible that data storage device for storing the large amount of data is provided from the beginning, however such a provision increases cost. In addition, a technique of a timely preparation of capacity for a sudden requirement of the capacity, in other words, so called storage on demand is desired.
Regarding the above increase/addition of the storage capacity, inventions are supposed, for example, in the Patent Documents 4, 5, 6, and 7.
An invention disclosed in the Patent Document 4 is a method in which an extension of capacity of logical devices or increase of the number of the logical devices accompanying the extension of capacity of external storage devices can be accurately conducted on-line in an information processing system including external storage devices respectively in a primary system and a secondary system. This technique is based on an assumption that the capacity of the external storage devices has already been extended, and does not relate to a technique for managing and controlling the capacity extension of the external storage devices (real volume) themselves.
An invention disclosed in the Patent Document 5 realizes a reduction of initial investment for data storage devices and an easy addition of capacity in the data storage devices. The addition of capacity in this invention, however, is a technique in which the data storage device at a user location is provided beforehand with a disk device (additional capacity) having a capacity larger than the user's initial requirement so that the user can easily extend a usable region within a range of the above additional capacity which is provided beforehand as shown in FIG. 1 of the Patent Document 5 for example. Therefore, this invention does not relate to a technique for physically increasing capacity of the data storage device in a site of a user.
The invention described in the Patent Document 6 is an invention that realizes an easy virtual extension of capacity of an auxiliary storage device for a personal computer. However, the extension of the capacity in this invention means a solution for a lack of capacity in which when the personal computer lacks available capacity, old files are transferred to a file server, and the transferred files are deleted for preparing the available capacity in the personal computer in order to solve the lack of capacity. Therefore, this extension is only a subsidiary extension of the capacity, and brings about an extra process burden of finding, transferring and deleting old files each time the personal computer lacks capacity. Also, when the file server lacks capacity as well as the personal computer, this situation is dealt with by using another file server, however this process brings about the extra process burden of transferring the data to the above another file server. Further, when the lack of capacity can not be dealt with even by all the servers in the site (the servers connected via the LAN), this situation can not be solved. Still further, in this invention, the only unit of processing of data is a file so that this invention can not be applied for processing the used region of a database management system for example, although this invention can be applied to a file system.
An invention described in the Patent Document 7 is an invention which relates to a rental service of storage. By this service, a user uses capacity of storage in a storage service provider (SSP) site for a prescribed period (one month for example) based on a contract and pays a fee instead of preparing the storage by himself/herself. The invention described in the Patent Document 7 relates to the rental service of the storage such as the above, in which the storage provider prospects use an amount in the future based on past use amount of the storage by the user of the storage, and notifies prospect result to the user of the storage. The user of the storage can modify the contract content to a suitable content by extending or reducing data amount to be used based on this notification in order to receive the rental service.
In the above rental service of the storage, the user pays a rental fee for the storage which the storage provider rents to him/her, instead of preparing the storage. When the capacity of the storage to be used is very large, a large amount of rental fee is needed.
Also, in the above described conventional techniques, burden of manpower is great because an administrator or the like has to determine the lack of capacity and to instruct extension/reduction of capacity (addition/reduction of capacity).
Considering the above, it is desired that the lack of capacity is dealt with by distributing the capacity which is needed at each moment to respective information processing resources (for example, databases, file systems and the like) in a site basically by using storage included in the site itself, and when the lack of capacity can not be dealt with even when all the storage in the above site itself are used, the storage in external servers are used, and thereafter released when the above storage in the external servers becomes unnecessary, and further that these processes are automatically executed by a computer.
Patent Document 1
Japanese Patent Application Publication No. Hei11-15732
Patent Document 2
Japanese Patent Application Publication No. Hei10-40169
Patent Document 3
Japanese Patent Application Publication No. Hei6-19796
Patent Document 4
Japanese Patent Application Publication No. Hei8-241220
Patent Document 5
Japanese Patent Application Publication No. 2002-312689
Patent Document 6
Japanese Patent Application Publication No. Hei9-185536
Patent Document 7
Japanese Patent Application Publication No. 2002-312699
Non-Patent Document 1
NETWORK WORLD, September issue 2002, p154-157
Non-Patent Document 2
DATA STORAGE REPORT 2002 as the separate volume of COMPUTOPIA, published by Computer Age. Co., Ltd, p21, 22, 23, 34, 38 and 39
Non-Patent Document 3
STORAGE IN PROGRESS (First part) on NIKKEI COMPUTER on May 6, 2002, p134-141
Non-Patent Document 4
STORAGE NETWORKING VIRTUALIZATION written by Gen Negoro and included in UNISYS TECHNOLOGY REVIEW 74th issue, August 2002
Non-Patent Document 5
“SNIA Virtualization Tutorial” which can be downloaded at http://www.snia.org/education/tutorials/virtualization/
Non-Patent Document 6
http://www.falconstor.co.jp/products/competitive/